#ifndef GOLDOCHEMAINWINDOW_H
#define GOLDOCHEMAINWINDOW_H

#include <QtGui/QMainWindow>

namespace Ui
{
	class GoldocheMainWindow;
}

class QCloseEvent;
class VideoPlayerWidget;
class IpcClient;

class GoldocheMainWindow : public QMainWindow
{
	Q_OBJECT
public:
	GoldocheMainWindow(QWidget *parent = 0);
	~GoldocheMainWindow();

protected:
	void closeEvent(QCloseEvent *event);

private slots:
	void aboutGoldoche();
	void openVideo();
	void playPauseVideo();
	void recordVideo();
	void showError(const QString &errorMessage);
        void sendTraitementSetting();

private:
	void init();
	void setupActions();
	void setupButtons();
	void startFilterProcess();
	void setupIpc();

private:
	Ui::GoldocheMainWindow *ui;
	VideoPlayerWidget *mVideoPlayer;
	IpcClient *mIpcClient;

	int mConvolutionValue[9];

};

#endif // GOLDOCHEMAINWINDOW_H
